package com.sg.dto.biz.operation.req;

import com.sg.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

/**
 * @desc ImplementPrivatizationAndSeparationDataComReqDto
 * @使用场景
 */
@Data
public class ImplementPrivatizationAndSeparationDataComReqDto
        extends BaseDto
        implements Serializable {

    /**
     * 数据库IP地址
     */
    @ApiModelProperty("数据库IP地址")
    private String databaseIpAdress;

    /**
     * 数据库端口号
     */
    @ApiModelProperty("数据库端口号")
    private String databaseport;

    /**
     * 数据库名
     */
    @ApiModelProperty("数据库名")
    private String databaseName;

    /**
     * 数据库账号
     */
    @ApiModelProperty("数据库账号")
    private String databaseAccount;

    /**
     * 数据库密码
     */
    @ApiModelProperty("数据库密码")
    private String databasePassword;

    /**
     * 分离数据表主键ID
     */
    @NotNull(message = "分离数据表主键ID不能为空")
    @ApiModelProperty("分离数据表主键ID")
    private String operationSeparatedDataId;

    /**
     * 设计工具加密表名
     */
    @NotNull(message = "设计工具加密表名不能为空")
    @ApiModelProperty("设计工具加密表名")
    private String toolTableEncryptionName;

    /**
     * 内容表主键字段英文名
     */
    @NotNull(message = "内容表主键字段英文名不能为空")
    @ApiModelProperty("内容表主键字段英文名")
    private String entityName;

    /**
     * 租户空间ID
     */
    @NotNull(message = "租户空间ID不能为空")
    @ApiModelProperty("租户空间ID")
    private String tenantSpaceId;

    @ApiModelProperty("空间列表 ")
    List<String> spaceList = new ArrayList<>();

}
